package com.lancoo.ccas53.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 院系及提交时间
 * </p>
 *
 * @author quin.song
 * @since 2024-05-20
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(of = {"taskId", "baseCollegeId"})
@ApiModel(value = "College对象", description = "院系及提交时间")
public class College implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("学院id")
    @TableId(value = "college_id", type = IdType.AUTO)
    private Long collegeId;

    private Integer taskId;

    @ApiModelProperty("基础平台学院id")
    private String baseCollegeId;

    @ApiModelProperty("学院名称")
    private String collegeName;

    @ApiModelProperty("开课计划提交人")
    private String coursePlanUserId;

    @ApiModelProperty("开课计划提交人名称")
    private String coursePlanUserName;

    @ApiModelProperty("开课计划第一次提交时间")
    private LocalDateTime coursePlanFirstTime;

    @ApiModelProperty("开课计划最新提交时间")
    private LocalDateTime coursePlanLatestTime;

    @ApiModelProperty("预选提交人")
    private String preUserId;

    @ApiModelProperty("预选提交人名称")
    private String preUserName;

    @ApiModelProperty("预选第一次提交时间")
    private LocalDateTime preFirstTime;

    @ApiModelProperty("预选最新提交时间")
    private LocalDateTime preLatestTime;

    @ApiModelProperty("教学任务提交人")
    private String teachingTaskUserId;

    @ApiModelProperty("教学任务提交人名称")
    private String teachingTaskUserName;

    @ApiModelProperty("教学任务第一次提交时间")
    private LocalDateTime teachingTaskFirstTime;

    @ApiModelProperty("教学任务最新提交时间")
    private LocalDateTime teachingTaskLatestTime;

    @ApiModelProperty("课表编排提交人")
    private String scheduleArrUserId;

    @ApiModelProperty("课表编排提交人名称")
    private String scheduleArrUserName;

    @ApiModelProperty("课表编排第一次提交时间")
    private LocalDateTime scheduleArrFirstTime;

    @ApiModelProperty("课表编排最新提交时间")
    private LocalDateTime scheduleArrLatestTime;

    @ApiModelProperty("场地分配状态  0、未分配 1、已分配")
    private Integer roomSet;

    @ApiModelProperty("选课提交人")
    private String selUserId;

    @ApiModelProperty("选课提交人名称")
    private String selUserName;

    @ApiModelProperty("选课第一次提交时间")
    private LocalDateTime selFirstTime;

    @ApiModelProperty("选课最新提交时间")
    private LocalDateTime selLatestTime;
}
